package com.hyjy.music.service

/**
 * 音乐播放接口
 */
interface IService {
    /**
     * 开始
     *
     * @param url 音乐路径
     * @param reset 是否重置
     */
    fun startMusic(url: String, reset: Boolean = true)

    /**
     * 暂停
     */
    fun pauseMusic()

    /**
     * 停止
     */
    fun stopMusic()

    /**
     * 音乐是否正在播放
     */
    fun isMusicPlaying(): Boolean

    /**
     * 更新播放进度
     *
     * @param sec 播放进度
     */
    fun seekMusicTo(sec: Int)

    /**
     * 设置音乐回调
     */
    fun setMusicListener(listener: MusicListener)

    interface MusicListener {
        /**
         * 音乐播放进度正在改变
         */
        fun onMusicProgressChange(url: String, progress: Int, duration: Int)

        /**
         * 音乐播放完成
         */
        fun onMusicCompletion()
    }
}